import java.util.Scanner;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 26727
 * Date: 2025-09-20
 * Time: 15:29
 */
public class Test360 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int[] num = new int[3];
        for(int i = 0; i < 3; i++) {
            num[i]  = sc.nextInt();
        }
        int n = sc.nextInt();
        int[] arr = new int[n];
        int[] wait = new int[n-1];
        for(int i = 0; i < n; i++) {
            arr[i] = sc.nextInt();
        }
        for(int i = 0; i < n-1; i++) {
            wait[i] = sc.nextInt();
        }
        int[] dp = new int[n+1];
        // 初始化
        for(int i = 0; i <= n; i++) {
            dp[i] = Integer.MAX_VALUE;
        }
        dp[0] = 0;
        for(int i = 1; i <= n; i++) {
            int time = 0;
            int cost = 0;
            for(int j = i-1; j >= 0; j--) {
                if(j < i-1) {
                    if(j < wait.length) {
                        time += wait[j];
                    }
                }
                time += arr[j];
                if(time <= num[2]) {
                    cost = num[0];
                } else {
                    cost = num[0] + num[1] * (time-num[2]);
                }
                dp[i] = Math.min(dp[i],dp[j]+cost);

            }
        }
        System.out.println(dp[n]);
    }

//    7 1 5
//            4
//            6 7 5 8
//            1 11 1
}
